home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Interfaces & Libraries / Interfaces / PInterfaces / EPPC.p < prev    next >
Encoding:
Text File  |  1995-07-06  |  4.3 KB  |  175 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        EPPC.p
  3.  
  4.      Contains:    High Level Event Manager Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Package:    Universal Interfaces 2.1 in “MPW Latest” on ETO #18
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. }
  19.  
  20. {$IFC UNDEFINED UsingIncludes}
  21. {$SETC UsingIncludes := 0}
  22. {$ENDC}
  23.  
  24. {$IFC NOT UsingIncludes}
  25.  UNIT EPPC;
  26.  INTERFACE
  27. {$ENDC}
  28.  
  29. {$IFC UNDEFINED __EPPC__}
  30. {$SETC __EPPC__ := 1}
  31.  
  32. {$I+}
  33. {$SETC EPPCIncludes := UsingIncludes}
  34. {$SETC UsingIncludes := 1}
  35.  
  36.  
  37. {$IFC UNDEFINED __ERRORS__}
  38. {$I Errors.p}
  39. {$ENDC}
  40. {    ConditionalMacros.p                                            }
  41.  
  42. {$IFC UNDEFINED __APPLETALK__}
  43. {$I AppleTalk.p}
  44. {$ENDC}
  45. {    Types.p                                                        }
  46. {    OSUtils.p                                                    }
  47. {        MixedMode.p                                                }
  48. {        Memory.p                                                }
  49.  
  50. {$IFC UNDEFINED __FILES__}
  51. {$I Files.p}
  52. {$ENDC}
  53. {    Finder.p                                                    }
  54.  
  55. {$IFC UNDEFINED __PPCTOOLBOX__}
  56. {$I PPCToolbox.p}
  57. {$ENDC}
  58.  
  59. {$IFC UNDEFINED __PROCESSES__}
  60. {$I Processes.p}
  61. {$ENDC}
  62. {    Events.p                                                    }
  63. {        Quickdraw.p                                                }
  64. {            QuickdrawText.p                                        }
  65.  
  66. {$IFC UNDEFINED __EVENTS__}
  67. {$I Events.p}
  68. {$ENDC}
  69.  
  70. {$PUSH}
  71. {$ALIGN MAC68K}
  72. {$LibExport+}
  73.  
  74. CONST
  75. { value for eventRecord.what }
  76.     kHighLevelEvent                = 23;
  77.  
  78. { postOptions currently supported }
  79.     receiverIDMask                = $0000F000;
  80.     receiverIDisPSN                = $00008000;
  81.     receiverIDisSignature        = $00007000;
  82.     receiverIDisSessionID        = $00006000;
  83.     receiverIDisTargetID        = $00005000;
  84.     systemOptionsMask            = $00000F00;
  85.     nReturnReceipt                = $00000200;
  86.     priorityMask                = $000000FF;
  87.     nAttnMsg                    = $00000001;
  88.  
  89. { constant for return receipts }
  90.     HighLevelEventMsgClass        = 'jaym';
  91.     rtrnReceiptMsgID            = 'rtrn';
  92.  
  93.     msgWasPartiallyAccepted        = 2;
  94.     msgWasFullyAccepted            = 1;
  95.     msgWasNotAccepted            = 0;
  96.  
  97.  
  98. TYPE
  99.     TargetID = RECORD
  100.         sessionID:                LONGINT;
  101.         name:                    PPCPortRec;
  102.         location:                LocationNameRec;
  103.         recvrName:                PPCPortRec;
  104.     END;
  105.  
  106.     TargetIDPtr = ^TargetID;
  107.     TargetIDHandle = ^TargetIDPtr;
  108.     TargetIDHdl = ^TargetIDPtr;
  109.  
  110.     SenderID = TargetID;
  111.  
  112.     SenderIDPtr = ^SenderID;
  113.  
  114.     HighLevelEventMsg = RECORD
  115.         HighLevelEventMsgHeaderLength: INTEGER;
  116.         version:                INTEGER;
  117.         reserved1:                LONGINT;
  118.         theMsgEvent:            EventRecord;
  119.         userRefcon:                LONGINT;
  120.         postingOptions:            LONGINT;
  121.         msgLength:                LONGINT;
  122.     END;
  123.  
  124.     HighLevelEventMsgPtr = ^HighLevelEventMsg;
  125.     HighLevelEventMsgHandle = ^HighLevelEventMsgPtr;
  126.     HighLevelEventMsgHdl = ^HighLevelEventMsgPtr;
  127.  
  128.     GetSpecificFilterProcPtr = ProcPtr;  { FUNCTION GetSpecificFilter(contextPtr: UNIV Ptr; msgBuff: HighLevelEventMsgPtr; (CONST)VAR sender: TargetID): BOOLEAN; }
  129.     GetSpecificFilterUPP = UniversalProcPtr;
  130.  
  131. CONST
  132.     uppGetSpecificFilterProcInfo = $00000FD0; { FUNCTION (4 byte param, 4 byte param, 4 byte param): 1 byte result; }
  133.  
  134. FUNCTION NewGetSpecificFilterProc(userRoutine: GetSpecificFilterProcPtr): GetSpecificFilterUPP;
  135.     {$IFC NOT GENERATINGCFM }
  136.     INLINE $2E9F;
  137.     {$ENDC}
  138.  
  139. FUNCTION CallGetSpecificFilterProc(contextPtr: UNIV Ptr; msgBuff: HighLevelEventMsgPtr; {CONST}VAR sender: TargetID; userRoutine: GetSpecificFilterUPP): BOOLEAN;
  140.     {$IFC NOT GENERATINGCFM}
  141.     INLINE $205F, $4E90;
  142.     {$ENDC}
  143.  
  144. FUNCTION PostHighLevelEvent({CONST}VAR theEvent: EventRecord; receiverID: UNIV Ptr; msgRefcon: LONGINT; msgBuff: UNIV Ptr; msgLen: LONGINT; postingOptions: LONGINT): OSErr;
  145.     {$IFC NOT GENERATINGCFM}
  146.     INLINE $3F3C, $0034, $A88F;
  147.     {$ENDC}
  148. FUNCTION AcceptHighLevelEvent(VAR sender: TargetID; VAR msgRefcon: LONGINT; msgBuff: UNIV Ptr; VAR msgLen: LONGINT): OSErr;
  149.     {$IFC NOT GENERATINGCFM}
  150.     INLINE $3F3C, $0033, $A88F;
  151.     {$ENDC}
  152. FUNCTION GetProcessSerialNumberFromPortName({CONST}VAR portName: PPCPortRec; VAR pPSN: ProcessSerialNumber): OSErr;
  153.     {$IFC NOT GENERATINGCFM}
  154.     INLINE $3F3C, $0035, $A88F;
  155.     {$ENDC}
  156. FUNCTION GetPortNameFromProcessSerialNumber(VAR portName: PPCPortRec; {CONST}VAR pPSN: ProcessSerialNumber): OSErr;
  157.     {$IFC NOT GENERATINGCFM}
  158.     INLINE $3F3C, $0046, $A88F;
  159.     {$ENDC}
  160. FUNCTION GetSpecificHighLevelEvent(aFilter: GetSpecificFilterUPP; contextPtr: UNIV Ptr; VAR err: OSErr): BOOLEAN;
  161.     {$IFC NOT GENERATINGCFM}
  162.     INLINE $3F3C, $0045, $A88F;
  163.     {$ENDC}
  164.  
  165. {$ALIGN RESET}
  166. {$POP}
  167.  
  168. {$SETC UsingIncludes := EPPCIncludes}
  169.  
  170. {$ENDC} {__EPPC__}
  171.  
  172. {$IFC NOT UsingIncludes}
  173.  END.
  174. {$ENDC}
  175.